package Java道题;

import java.util.Scanner;

public class 求n次方 {
	//  求a的n次幂

	public static  double cal(double a,int n)
	{
		/*
		 * n为偶数，a的n次方为a的n/2次方的平方
		 * n为奇数，a的n次方为a的n-1次方与a的乘积
		 * n为1，返回a;
		 */
		/*if(n==1)
		{
			return a;
		}
		if(n%2==0)
		{
			return cal(a,n/2)*cal(a,n/2);
		}
		return cal(a,n-1)*a;*/
		/*
		 * 后一个数是前一个数与a的乘积
		 * n为1，返回a;
		 */
		if(n==1)
		{
			return a;
		}
		return a*cal(a,n-1);
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner ss=new Scanner(System.in);
		System.out.print("请输入a:");
		double a=ss.nextDouble();
		System.out.print("请输入n:");
		int n=ss.nextInt();
		System.out.println(a+"的"+n+"次方为"+cal(a,n));

	}

}
